Termination w.r.t. Q of the following Term Rewriting System could be proven:
Q restricted rewrite system:
The TRS R consists of the following rules:
ack(0, y) → s(y)
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
f(s(x), y) → f(x, s(x))
f(x, s(y)) → f(y, x)
f(x, y) → ack(x, y)
ack(s(x), y) → f(x, x)
Q is empty.
↳ QTRS
↳ DependencyPairsProof
Q restricted rewrite system:
The TRS R consists of the following rules:
ack(0, y) → s(y)
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
f(s(x), y) → f(x, s(x))
f(x, s(y)) → f(y, x)
f(x, y) → ack(x, y)
ack(s(x), y) → f(x, x)
Q is empty.
Using Dependency Pairs [1,15] we result in the following initial DP problem:
Q DP problem:
The TRS P consists of the following rules:
ACK(s(x), 0) → ACK(x, s(0))
ACK(s(x), s(y)) → ACK(s(x), y)
F(x, s(y)) → F(y, x)
F(s(x), y) → F(x, s(x))
ACK(s(x), s(y)) → ACK(x, ack(s(x), y))
F(x, y) → ACK(x, y)
ACK(s(x), y) → F(x, x)
The TRS R consists of the following rules:
ack(0, y) → s(y)
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
f(s(x), y) → f(x, s(x))
f(x, s(y)) → f(y, x)
f(x, y) → ack(x, y)
ack(s(x), y) → f(x, x)
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ QDPSizeChangeProof
Q DP problem:
The TRS P consists of the following rules:
ACK(s(x), 0) → ACK(x, s(0))
ACK(s(x), s(y)) → ACK(s(x), y)
F(x, s(y)) → F(y, x)
F(s(x), y) → F(x, s(x))
ACK(s(x), s(y)) → ACK(x, ack(s(x), y))
F(x, y) → ACK(x, y)
ACK(s(x), y) → F(x, x)
The TRS R consists of the following rules:
ack(0, y) → s(y)
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
f(s(x), y) → f(x, s(x))
f(x, s(y)) → f(y, x)
f(x, y) → ack(x, y)
ack(s(x), y) → f(x, x)
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- ACK(s(x), s(y)) → ACK(s(x), y)
The graph contains the following edges 1 >= 1, 2 > 2
- F(x, y) → ACK(x, y)
The graph contains the following edges 1 >= 1, 2 >= 2
- ACK(s(x), s(y)) → ACK(x, ack(s(x), y))
The graph contains the following edges 1 > 1
- ACK(s(x), y) → F(x, x)
The graph contains the following edges 1 > 1, 1 > 2
- ACK(s(x), 0) → ACK(x, s(0))
The graph contains the following edges 1 > 1
- F(s(x), y) → F(x, s(x))
The graph contains the following edges 1 > 1, 1 >= 2
- F(x, s(y)) → F(y, x)
The graph contains the following edges 2 > 1, 1 >= 2